Top 10k strings from 100 Rutinas C.M. (1985)(Iveson Software)(es).tzx in <root> / bin / z80 / software / Sinclair Spectrum Collection TOSEC.exe / Sinclair ZX Spectrum - Utilities & Educational / Sinclair ZX Spectrum - Utilities & Educational - [TZX] (TOSEC-v2007-01-01) /

Back to the directory listing

   7 ;"Rutina en ROM";
   2 ESTA RUTINA NO ES RELOCALIZABLE
   2 A,B,C$,DUR:
   2  - 256*INT(
   1 x,y,n donde X,Y   tienen magnitudes  entre  10 y  60, N ubica entre 8000 y 9999.  ":
   1 de una     posicion de la pantalla:P.e.,   para encontrar el codigo del    caracter situado 
   1 c         
   1 __________";
   1 \##N#F#"]\"
   1 [}\r#s#N#F#
   1 ZX SPECTRUM 48 K
   1 Scroll de atributos der.N
   1 SAVE'";C$(
   1 Rutina en ROM
   1 RUTINA NO:
   1 RUT. C.M. 
   1 RANDOMIZE USR 3190
   1 RANDOMIZE USR ";A
   1 RANDOMIZE USR    63950
   1 R"E\*S\###"
   1 Press ENTER to Expand the Whole Program 
   1 PULSE UNA TECLA      
   1 PRINT;: RANDOMISE USR 60222
   1 PRESIONE UNA TECLA 
   1 PARA VER COMO SE HACE, SALIR Y  EXAMINAR LAS LINEAS 9278 A 9286 
   1 OTRA TECLA EMPEZAR   
   1 OTRA TECLA   
   1 OTRA TACLA EMPEZAR 
   1 No. STATEMENTS :
   1 No. OF EXTRA BYTES::}\_:~\W:
   1 No. LINES      :
   1 No. Bytes:
   1 MPRIM./ o 
   1 Length of Program Only:!
   1 La rutina empieza en ";A
   1 La rutina acaba en   ";A+B-1
   1 La longitud es   ";B;" bytes
   1 LLongitud:
   1 LINE NO:NOW RENUMBER PROGRAM
   1 LA RUTINA ESTA BIEN GRABADA
   1 LA RUTINA "'" ";C$'" ESTA SIENDO LLAMADA 
   1 L);"'CODE ";A;",";B
   1 IVESON SOFTWARE  
   1 INDICE - PAGINA ";(Z-1
   1 First Byte:
   1 FROM LINE NO:TO LINE NO:AFTER LINE NO:NOW RENUMBER PROGRAM
   1 Esta es la linea #";Z
   1 Empieza en la direccion: 
   1 ESTA RUTINA NO ES REUBICABLE
   1 ERROR CODE: ";N$:
   1 ENLARGE REM
   1 BLOCK COPY
   1 Auto-start Line No:
   1 Array Name:
   1 A$=A$+A$+A$+A$:
   1 ;C$;" CODE ";A;",";B:
   1 ;"y despues 
   1 ;"__________
   1 ;"Usando POKE 23606 y 23607 con   diferentes numeros, aparecera   un set de caracteres irrecono-  cible. Para normalizarlo,POKE   23606,0 : POKE  23607,60.       Proteja sus programas con       estos POKES antes de cada PRINT":
   1 ;"Teniendo conectado el EAR del   cassette-recorder al Specrum,   ponga en marcha el cassette     (La voz es mejor con el volumen al maximo).Entre CLEAR 32767    :RANDOMIZE USR 65290.Toda la     memoria desde 32768 a 65K es   usada.Para reproducir use #78.":
   1 ;"Tambien puede hacer un scroll   de los atributos usando esta    rutina y las No: 37 - 40,       despues de definir una caja     apropiada y fijar el valor de   los atributos con la #63."
   1 ;"Sigue los prompts a expandir    con un REM en cualquier lugar   del programa,por encima de los  9999 bytes":
   1 ;"SCROLL-OFF   POKE ";A+16
   1 ;"SCROLL-OFF   POKE ";A+13
   1 ;"SCROLL-OFF   POKE ";
   1 ;"SCROLL GIRAT.POKE ";A+13
   1 ;"SCROLL GIRAT.POKE ";
   1 ;"SCROLL CIRC. POKE ";A+16
   1 ;"SCRL INVERSO POKE ";A+13
   1 ;"Para renumerar las lineas       empezando en 
   1 ;"Para llamar esta rutina, use";
   1 ;"Para grabar esta rutina, use";
   1 ;"Para decir los 2 bytes equiva-  lentes a X siendo L(Menor)      M(mayor) sig: bytes significan  que 256 * M + L = X.Esta rutina permite una conversion de un    numero entre 0 - 65535 a estos  2-bytes equivalentes. para con- vertir X en 2-bytes equiv.      haga RANDOMIZE X.  
   1 ;"Para borrar todas las lineas    desde  
   1 ;"Para ayudar en PRINT/PLOT,esta  rutina muestra en BRIGHT ON/OFF un tablero de damas en la       pantalla."
   1 ;"PRINT AT coordenadas de la";
   1 ;"POKE 64884, Color de papel"
   1 ;"POKE 64859, Color de la Tinta "
   1 ;"POKE 64829,Codigo del caracter  POKE 64831,Altura de la caja    POKE 64834,Anchura de la caja   POKE 64832 Y POKE 64835 con     PRINT AT coordenadas para si-   tuar la esquina superior izqui- erda de la caja."
   1 ;"POKE 64682, Duracion            POKE 64693, Frecuencia 1        POKE 64702, Frecuencia 2"
   1 ;"POKE 64648, Frecuencia          POKE 64649, Span                POKE 64651, Duracion            POKE 64670, 28(Arriba) o                    29(abajo)"
   1 ;"POKE 63011,Decrementa valor     POKE 63012, Numero de notas     POKE 63014 y 63015, Valor            (Menor/mayor sig)          POKE 63017 & 63018, Duracion         en ms (menor/mayor sig)"
   1 ;"POKE 63001 y 63002 con el valor asignado(menor/mayor sig)       POKE 63004 y 63005 con la dura- cion en milisegundos            (menor/mayor sig)"
   1 ;"POKE 60006,Duracion (1-127)     POKE 60020,Colores  (0-7)       POKE 60029,Espacio linea(1-255) 
   1 ;"POKE ";A+7
   1 ;"POKE ";A+6
   1 ;"POKE ";A+4
   1 ;"POKE ";A+1
   1 ;"Ordena un scroll de una tabla   mayor de >22 lineas sin pausas  use   POKE  23692,x donde x es  el No:de lineas para hacer un   scroll. para scroll continuo    use POKE 23692,255  haciendo    los saltos generados por las    lineas.":
   1 ;"Mover el cursor a la linea      requerida  y llamar a esta      rutina.                         Estara en modo EDIT,pero con el cursor al final de la linea.":
   1 ;"Menor Sig  Mayor Sig":
   1 ;"Llame esta rutina al principio  de su programa usando como li-  nea 1,'1  RANDOMIZE USR 60899'. Si se produce algun error tipo  D:BREAK,H:STOP in INPUT o       L:BREAK este no se parara pero  saltara a la linea que tenga    su numero en los bites 60952,3  (bajo/alto).Esta linea inicial-  mente es 9495.":
   1 ;"Llame a esta rutina al princi-  pio de su programa, poniendo    como LINEA 1, '1  RANDOMIZE     USR 60826'.Ahora si se produce  algun error(que no sea del tipo 0:OK,8:END o  9:STOP) el pro-   grama no se interrumpira pero   saltara a la linea que tenga    su numero en los dos byte de    60878,79(bajo/alto)inicialmen-  te 
   1 ;"La rutina Laser Zap puede ser   llamada usando 
   1 ;"INTRODUCCION":
   1 ;"Haga los siguientes POKEs:-     INK    (63732)  PAPER (63738)   FLASH  (63744)  BRIGHT(63750)   INVERSE(63756)  OVER  (63762)   AT (63768,63771)CHR$  (63774)"
   1 ;"GOSUBs y GOTOs no son cambiados use #60 si necesita hacerlo.   
   1 ;"Esta rutina simula que haya     apagado la corriente, no solo   hace NEW si no que borra toda   la memoria y zona de variables":
   1 ;"Esta rutina reproduce lo que la #77 graba.Es mejor usar el ca-  ssette conectado en MIC para    amplificar el sonido.":
   1 ;"Esta rutina remplaza los        numeros del programa por VAL    string el cero es remplazado    por NOT PI.Esto ahorra memoria  pero resta velocidad.Ver las    #41,#64,#82,#90":
   1 ;"Esta rutina reduce y da velo-   cidad a los programas anulando  todas las lineas con un coman-  do REM.                         Vea #41,#82,#90 y #100.":
   1 ;"Esta rutina reduce los progra-  mas lo maximo posible combina   todas las lineas que es posible hacerlo.                        La velocidad de ejecucion  se   incrementa. Vea #41,#64,#90 y   #100":
   1 ;"Esta rutina permite reubicar    las lineas de un programa en    BASIC.Para cambiar las lineas   4200 hasta 6745 como aparecen   despues de la 2200 en el lista- do responda 4200,6745 y 2200 a  las preguntas.Las nuevas li-    neas tienen todas No #0.Llame   a la #60 para renumerar y a la  #57 para borrar las anteriores":
   1 ;"Esta rutina permite introducir  datos hex en RAM.POKE (Bajo/    alto)sig (Vea #61) de la prime- ra direccion para ser cambiadas en el sistema-var DEFADD(23563  /4).POKE 65360/61 con la prime- ra direccion de la rutina #63   (Hex-Dec) la cual tambien debe  estar en memoria.":
   1 ;"Esta rutina muestra un analisis de toda la memoria,empezando en la direccion que ha sido POKE-  ada en la direccion 62866,67    (Bajo/alto).Las 4 columnas son  Direccion contenido en decimal, hexadecimal y CHR$.":
   1 ;"Esta rutina muestra la direc-   cion del primer caracter en la  linea del cursor.":
   1 ;"Esta rutina lista todo          (1) Variables numericas         (2) Variables alfa ''           (3) Tablas numericas            (4) Tablas alfanumericas        (5) Bucles FOR..NEXT Variables  de control "  
   1 ;"Esta rutina le permite deter-   minar el codigo 
   1 ;"Esta rutina inserta un numero   dado en un bloque de memoria.   POKE 63796, No: de bytes        POKE 63798 (menos sig) y 63799  (mas sig),Direccion de comienzo POKE 63801, No:a insertar"
   1 ;"Esta rutina imprime fuera el    numero de las lineas y estamen- tos en el programa. Para reem-  pezar  use goto 9001"
   1 ;"Esta rutina hace un random #    en el sistema de variables      SEED ( PEEK 23670 & 23671 )." ;
   1 ;"Esta rutina extiende los        programas dejando un solo       comando en cada linea (excepto  en IF..THEN ).                  Debe introducir el No de lineas a expandir.                     Debe usar #60 despues de llamar esta rutina.":
   1 ;"Esta rutina espera hasta que    una tecla(cuyo CODE ha sido     introducido en L)sea presionada":
   1 ;"Esta rutina elimina  los        atributos de color,Vea tambien  #64,#82 y #100":
   1 ;"Esta rutina desactiva la #98    para que las lineas puedan ser  editadas alteradas.":
   1 ;"Esta rutina decodifica la       informacion de las cabeceras    de los programas                Nombre,Direccion,Tipo,Longitud  Y Auto ejecucion.":
   1 ;"Esta rutina convierte Nos: hex  a su equivalente decimal.       Borra la pantalla y aparece     'H:'  ENTRE el no: hex .        Solo los 4 ultimos digitos son  convertidos. Entre 'Q' para     volver al BASIC. Cuando es      lamada desde #92(buscador Hex)  solo seran considerados los 2   ultimos digitos.":
   1 ;"Esta rutina convierte Nos:      decimal desde 0 a 65535 a hex.  Borra la pantalla y aparece'D:' Entre el No:Decimal. ENTER      Aparecera Error 6 si el No:esta fuera del intervalo indicado.   Pulse 'Q' para volver al BASIC":
   1 ;"Esta rutina cambiara todos los  cuadros en flash por normales   y viceversa.Esto es muy dife-   rente de lo que hacen las #32   y #33."
   1 ;"Esta rutina cambiara todos los  cuadros en brigth por normales  y viceversa.Esto es muy dife-   rente de lo que hacen las #34   y #35."
   1 ;"Esta rutina cambia todos los    caracteres de un codigo a un    segundo codigo dado.            Haga POKE 63903,Viejo CODIGO    POKE 63905, Nuevo CODIGO"
   1 ;"Esquina superior izquerda de    la caja"
   1 ;"En orden de impresion la rutina listara o imprimira las 24      lineas de la pantalla,haga un   POKE 23659,0  antes  de  cada   instruccion PRINT.              Al final un POKE 23659,2.       Use PAUSE 0 para prevenir el    Scroll":
   1 ;"En orden de  aparicion  la      primera linea  de  su programa  no se podra borrar (es #0)POKE  23755,0: POKE 23756,0.          Para hacer esto en el resto de  lineas,busque su direccion  X   usando la rutina 88, luego haga POKE X-4,0: POKE X-3,0.         El programa funcionara de forma que no se puedan usar los       comandos GOTO/GOSUB/RESTORE     en estas lineas.":
   1 ;"El programa contiene 
   1 ;"El espacio libre F desde la     ultima variable del RAMTOP es   escrito.                        Por este camino,puede usar      POKE 23637,203:POKE 23638,92:   SAVE 'nombre'CODE 23552,RAMTOP- 23550-F Para grabar el programa como CODE.                      El programa autoempezara en la  primera ";
   1 ;"ESTE ES UN EJEMPLO  DEL NUEVO   SET DE CARACTERES.              POKE 23606/7 CON EL MENOR/MAYOR SIGNIFICADO DE LOS BITES DE LA  DIRECCION DEL PRINCIPIO (MENOR  DE 256).NORMALMENTE 0 Y 223.    PARA RETORNAR AL SET NORMAL     POKE 23607,60.":
   1 ;"Dibuje una figura cerrada en la pantalla,entonces dibuje un     punto en el interior.POKE59293  con el atributo que se ha de    llenar la figura y despues      llame esta rutina               
   1 ;"Dibuja multiples puntos estre-  llas y anillos a partir de un   punto inicial  situado  cerca   del centro  de  la  pantalla    y usando 
   1 ;"DIRECCION
   1 ;"Corrompe el listado sin alterar la ejecucion del programa:      Intentar editar y alterar las   lineas puede ser fatal.         Puede usarse como proteccion.":
   1 ;"Combinando esta rutina con las   Nos:37-40,puede hacer SCROLL   con atributos.Use Attr Val de    la #63 y llame al Attr Scroll  una vez por cada 8 llamadas a   esta rutina."
   1 ;"1)Hay una linea,una sentencia     REM: despues POKE 23755,100     Permite RUN pero no LIST        hasta que no haga POKE 23755,02)POKE 23636,150. Para volver a   la normalidad POKE 23636,92.  3)Use CONFUSE (#98) ,llame #65&   #66 para Neutralizar BREAKs,    use CHR$ SCRAMBLE (#59) para    listar rapidamente #68 para     crear lineas no borrables con   mensajes":
   1 ;"----> ";
   1 ;",X-256*INT(X/256)"'" POKE ";A+2
   1 ;",Anchura de la caja";
   1 ;",Altura de la caja"
   1 ;", Nuevo valor atrib.";
   1 ;", INT(X/256)":
   1 ;" Y POKE ";A+3
   1 ;" Rutinas 94 a 97 cambian todas   las minusculas de los strings   o el listado por mayusculas y   viceversa.Otra forma eficaz     de cambiar el cursor de mayus.  a minusc.Es POKE 23658,0 (Mi)   o 8(May).":
   1 :POKE 59582,
   1 7,13;: LET     Z=
   1 7,13,debe   entrar  PRINT 
   1 60039 Ahora Z es el co-   digo buscado.":
   1 255 SOLAMENTE
   1 23670   y 23671 mantienen el menor y el mayor significado ":
   1 100 RUTINAS C.M.
   1 /256) RANDOMIZE 
   1 /256) :POKE 59583,INT(
   1 /256)  POKE 64715, INT(
   1 /256)  POKE 64712, INT(
   1 /256)  POKE 23729,   INT(
   1 /256)          Todos los GOTOs,GOSUBs,LISTs,   LLISTs,RESTOREs,SAVE...LINEs    son renumerados (excepto por    argumentos calculaos y REMs).":
   1 /256)          POKE 64714, 
   1 -PULSE UNA TECLA         
   1 -256* INT(
   1 ,podra grabar la     rutina con el nombre de:        ";
   1 ,"scroll de atributos izq.",40
   1 ,"Supresor de REM",1
   1 ,"Super renumerador",1
   1 ,"Strings a minus.",1
   1 ,"Strings a mayus.",1
   1 ,"Simulador uni beep",15
   1 ,"Simulador multi beep",8
   1 ,"Scroll sin pausas",1
   1 ,"Scroll diag.SO",190
   1 ,"Scroll diag.SE",190
   1 ,"Scroll diag.NO",176
   1 ,"Scroll diag.NE",176
   1 ,"Scroll de atributos der.",200
   1 ,"Scroll de atributos arr.",40
   1 ,"Scroll de atributos ab.",40
   1 ,"Scroll cicular",1625
   1 ,"SCROLL estacionario izq.",255
   1 ,"SCROLL estacionario der",255
   1 ,"SCROLL Izq. bit-bit",255
   1 ,"SCROLL Izq. *caract.",33
   1 ,"SCROLL Der.*caract.",33
   1 ,"SCROLL Der. bit-bit",255
   1 ,"SCROLL Arriba bit-bit",175
   1 ,"SCROLL Arriba * caract.",24
   1 ,"SCROLL Abajo bit-bit",200
   1 ,"Reproductor son.",0
   1 ,"Renumerador",1
   1 ,"Protecciones",1
   1 ,"Programa monocromo",1
   1 ,"Pintado de figuras",1
   1 ,"On error go to",1
   1 ,"On break goto",1
   1 ,"Nuevo set de caract.",1
   1 ,"Mezclado de caracteres",1
   1 ,"Memoria libre",1
   1 ,"Llenar de atributos",1
   1 ,"Llamar screen de mem.",1
   1 ,"Listado verdadero",1
   1 ,"Listado falso",1
   1 ,"Listado en minusculas",1
   1 ,"Listado en mayusculas",1
   1 ,"Lineas imborrables",1
   1 ,"Lector de cabeceras",1
   1 ,"Izq.-DIAG SCROLL",22
   1 ,"Invertir screen",1
   1 ,"Interruptor de flash",1
   1 ,"Interruptor de bright",1
   1 ,"Inser. bloque en mem",1
   1 ,"Impresion en 24 lineas",1
   1 ,"Grabar screen en mem.",1
   1 ,"Grabador de son.",0
   1 ,"Gen.numeros aleat.",20
   1 ,"Gen. son.de una nota",5
   1 ,"Gen. son. dos notas",10
   1 ,"Flash si",1
   1 ,"Flash no",1
   1 ,"Expansor de programas",1
   1 ,"Expansor de REM",1
   1 ,"Escribir en screen",1
   1 ,"Efectos graficos",1
   1 ,"Efectos en border",10
   1 ,"Edit inverso",1
   1 ,"Direccion de linea",1
   1 ,"Detector tecla pulsada",1
   1 ,"Der.-DIAG SCROLL",22
   1 ,"Cuadricular screen",1
   1 ,"Creador de ventanas",1
   1 ,"Copy bloque de lin.",1
   1 ,"Convertidor a 2 bytes",1
   1 ,"Conversor HEX->DEC",1
   1 ,"Conversor DEC->HEX",1
   1 ,"Compresor de programas",1
   1 ,"Compresor de num.",1
   1 ,"Cargador HEX",1
   1 ,"Cambio caracteres",1
   1 ,"Cambiar screen",1
   1 ,"Cambiar paper",1
   1 ,"Cambiar ink",1
   1 ,"Busq.y list de var.",1
   1 ,"Buscador de screen",1
   1 ,"Bright si",1
   1 ,"Bright no",1
   1 ,"Borrar todo ",1
   1 ,"Borrar bloque lin",1
   1 ,"Borrado en SCROLL izq.",10
   1 ,"Borrado en SCROLL der.",10
   1 ,"Borrado a la izq.",32
   1 ,"Borrado a la der.",32
   1 ,"Analizador de prog.",1
   1 ,"Analizador de memoria",1
   1 ,"3Er/3 SCR Izq.",255
   1 ,"3Er/3 SCR Der. bit bit",255
   1 ,"2do/3 SCR Izq.",255
   1 ,"2do/3 SCR Der. bit bit",255
   1 ,"2do 2/3 SCR Izq.",255
   1 ,"2Do 2/3 SCR Der.*caract.",255
   1 ,"1Er/3 SCR Izq.",255
   1 ,"1Er/3 SCR Der. bit bit",255
   1 ,"1Er 2/3 SCR Izq.",255
   1 ,"1Er 2/3 SCR Der.*caract.",255
   1 , use GOTO 9001(no   RUN)para reempezar el program."
   1 +A;", 26";
   1 +-*]\"[\*Q\
   1 ++F+N+++"]\*S\~
   1 ++F+N+++"]\
   1 *]\###q#p##"]\
   1 *S\##"]\^#V
   1 *100 rutinas C.M.
   1 '" (1)Al 10% velocidad, use PAUSE"'" (2)A maxima velocidad"
   1 '"  Si quiere repetir,presione'
   1 '"  Si desea volver al indice,      presione '
   1 '"  Para acceder a una rutina de    la cual ya conoce el No:'
   1 '"  Para acceder a la siguiente     rutina'
   1 '  (salida).Entonces tendra la     posibilidad de grabar la        rutina,Q para volver a BASIC"
   1 #T]##N#F#~
   1 "Opciones del menu               /C/D/E/I/N/P/Q/R/S/X/                                                                              
   1 "La grabacion despues sera verif."
   1 "Esto es Laser Zap.Ahora para    Uni-Beep.":
   1 "Esta rutina ha sido grabada.    Ahora sera verificada,si esta   mal grabada podra volverla a    grabar automaticamente gracias  a la rutina de error tape."
   1 "El sigiente indice entra el No. de una rutina para su           descripcion (Inicio de todas    las rutinas y pokes) y un       ejemplo opcional."
   1 "#";N;": ";
   1 " Pulse otra tecla para reempezar"
   1 "  Si ya ha anotado los detalles   importantes(direccion,longitud  etc...)"
   1 "  Si escoje 
   1 "  Si escoge 
   1 "  Los POKEs necesariospara que    funcione la rutina presione'
   1  y usando un      intervalo 
   1  la llama.                   
   1  graba una pantalla,      
   1  es la primera linea para ser  renumerada,
   1  el Intervalo       POKE 64711, 
   1  cambia la pantalla por      la guardada una pantalla tiene  6912 bytes (24*32* 8, + 24*32   Atributos)y puede ser almacena  por encima de la ramtop.        Para tener una pantalla desde   X-6911 a X                      use POKE ";A+1
   1  SOFTWARE 
   1  Primero POKE 59580  ,
   1  POKE 63951,Duracion.      SAVE 'ZAP'CODE 63950,26."
   1  POKE 23728,
   1  POKE 23607, 223   
   1  IVESON SOFTWARE 
   1   IVESON  
   1   57344----(8118)----65461
   1    - 256*INT(
   1      ESPERE  50 SEGUNDOS MAS    
   1         rutinas en C.M. Las cuales      puede llamar(Usando RANDOMIZE/  PRINT USR)seguidas de su        direccion.Para introducirlas    en sus propios programas"
   1          LA RUTINA # 65          ANULA EL BREAK EN EL PROGRAMA  
   1